Universal Amiga OS 3.x icon.library in Assembler
________________________________________________
Program Description Programmbeschreibung
System Requirements Voraussetzungen
Program Features Eigenschaften
Library Versions Library Versionen
Latest Changes Letzte Änderungen
Download Links Bezugsquellen
Installation Installation
Configuration Konfiguration
Third Party Tools Drittanbieter Tools
HAM + DOpus5 + Bonus HAM + DOpus5 + Bonus
Contact and Feedback Kontakt und Berichte
Important Restrictions Einschränkungen !!
Rights & Distribution Rechte & Verteilung
Copyright 2007-2025
Peter Keunecke
Contents | < Browse | Browse >
This is an optimized replacement for the icon.library
of AmigaOS 3.0-3.9 or Aros 68k which can exist in the
Kickstart ROM or is loaded from the LIBS: directory.
This shared library offers several functions to load,
decode, display and save icon images and to configure
settings for the execution of the associated programs
by storing tooltypes, a default tool, stacksize, icon
position and drawer window data in the ".info" files.
Supported icon types are all old and MWB planar icons
as well as color-mapped NewIcons or OS 3.5 ColorIcons
and also OS4 and PNG TrueColor and merged Aros icons.
All icons can be displayed either with the blitter or
FBlit and the Amiga chipset or on a graphics card by
P96 or CGX in their best quality as fast as possible.
There are 5 methods available to display icon images:
1.) Planar icons are using bitplane data directly to
select pens and currently assigned screen colors.
No color palette data is stored in planar icons,
thus they need a screen palette with locked pens.
2.) The NewIcons and ColorIcons are using index bytes
for every pixel pointing to a 24 bit RGB palette,
so they are limited to 256 colors for each image.
One of them can be used for transparency masking.
The colors have to be mapped to the actual screen
palette and the images are converted from chunky
data into bitplanes, which both can take a while.
This method always finds the best matching colors
of the screen palette or tries to get a free pen.
3.) On Hi/TrueColor screens NewIcons and ColorIcons
are displayed perfectly by directly drawing their
24 bit RGB colors to a gfx-card without mapping.
This can be done a lot faster than the 2. method,
and also leaves more pens for other applications.
:( Unfortunately, the WB icon dragging routine still
needs traditional bitplanes from selected images.
:) To keep loading fast the color reduction, mapping
and C2P are delayed until the icons get selected.
4.) OS4, PNG and Aros icons are using TrueColor ARGB
images with 24 bit color data and an Alphachannel
byte for soft border fading over the background.
On gfx-cards these icons are displayed perfectly.
But on 8-bit and planar screens they first need a
time consuming color reduction into OS 3.5 icons
followed by the color mapping and C2P conversion.
5.) On HAM screens palette based icons are converted
into ARGB images like OS4 and PNG icons and then
either one of the 16 or 64 base colors is used or
2 color components of the previous pixel are hold
and that with the greatest difference is updated.
HAM images can display much more different colors
on a native Amiga screen than the color mapping.
But the chipset is far too slow to work with HAM.
Contents | < Browse | Browse >
Ok, the most important required qualification first: The system needs a user who understands how it works and what he's really doing when he changes something. Nobody just knowing the fire-button on his joystick. Somebody asked me to mention that the name_extension has to be removed after copying a library into Libs:. Yes, of course, you sometimes have to use your brain. For experienced users of Amiga OS 3.x and Aros 68k: This icon.library can be used on all real Amigas, on Minimig, Vampire, Amithlon and emulators like WinUAE. It works with any 680x0 CPU and needs no FPU or MMU. The library can display all icons on all screenmodes. The 68000 version was made for fast systems like the Minimig, because a plain Amiga at 7 MHz is too slow! The fastest thing you can do with such a slow Amiga: "Throw it into the bin!"... or buy an accelerator ;) If you really want to use something better than just 4-color or MagicWB icons then you need a CPU >30 MHz. Planar icons can not be made faster by icon.library, because they need no decompression or color mapping. You should have a fast harddisk, enough FastMem and a gfx-card to have more fun, but that's not required. This library works with every Workbench since v39 or Wanderer (Aros version) and AfA_OS, DOpus5 or Scalos. On some systems you have to replace the icon.library that is loaded from the Kickstart ROM with tools like SetPatch v44+ or RemLib, LoadResident or LoadModule. The support for PNG icons is limited to RGB and RGBA. Only these two TrueColor formats are decoded, but no grayscale or interlaced or PLTE palette based images. Only the chunks IHDR, IDAT, icOn and IEND are parsed, all other PNG chunks are skipped over and ignored. A wrong image type causes a fallback to default icons.
Contents | < Browse | Browse >
This icon.library can display all types of icons like old, MWB, OS 3.5, OS4, PNG or Aros icons and NewIcons. It works on all OS 3.0-3.9 and Aros 680x0 systems and can be used for any native screenmode or on gfx-cards. This library has been written completely in optimized assembler code with my IconBeFast v2 already built in. It is smaller than the original and works much faster, provided that the IconBeFast patch was not installed already, which is also included in the SystemPatch v3. But this icon.library has more improvements than just a faster color mapping. It can also delay the decoding of the 2. image, until an icon gets actually selected. It won't waste ChipMem for Workbench icons, if you set Prefs/Workbench to use "Other Memory" or by adding the command WBCTRL IMT=ICONFAST to your startup-sequence. OS 3.1.4-3.2 does not need memory settings like that. A cache for the screens colortable is built just once after booting and will be updated only when the number of shared pens has changed. Another optional cache with a cube of 512 "FastColors" can be used to calculate the closest colors directly. On RTG screens this optimization is always activated, because they need these colors only for icon dragging. A zlib inflate function is embedded for uncompressing OS4 and PNG images. The library has a color reduction which is based on 15 bits precision for the first 128 colors until the palette is scanned with less bits for a matching color or before another one is added to it. A palette occupation table avoids up to 200 scans to save time. A fast dithering changes the brightness of the pixels alternately by +2 or -2 and uses a checker board pattern for new mixed colors and higher quality. This library can display TrueColor icons on all native Amiga screens with normal palette based color mapping. Two levels of the alpha channel are translated into a mixture with 25 % or 50 % of gray to get soft borders, because the blitter supports only transparency masks. WB:Icon->Info and saving TrueColor icons will convert them into the OS 3.5 format with both 680x0 versions. But 68020 displays a requester in case that TrueColor icons would directly be replaced by ColorIcons. It can be allowed or prevented for a single icon, in drawers or always. The OS 3.5 conversion has the advantage of getting smaller files and a much faster icon loading, although the lower quality is very often hard to see. Bad planar images in OS 3.5 and OS4 icons are replaced by internal defaults, if too tiny or with a depth > 3. TrueColor icons with only one image will automatically get a darker second image with a simple glow-effect. For Hi/TrueColor screens a direct drawing mode on gfx- cards is much faster than the color mapping and offers HiColor image quality or even a pefect icon rendering. TrueColor versions like TC020 are also supporting soft borders by alpha channel blending over the background. Only the 68000 version has no direct drawing built-in, because there are no gfx-cards or drivers available. DefIcons are displayed ghosted with 50 % transparency. If you don't like this feature, call "IconGhostingOff" or add the tooltype "NoGhost" to particular deficons. The Ram Disk icon gets automatically synchronized with def_Ram.info in ENV:Sys and ENVARC:Sys, and you won't need Copy or MakeLink to create a RAM:Disk.info file. Icon labels can be written in Outline or Shadow style. The space optimization routine for writing was added. It is always activated, regardless of option settings, and it rebuilds the color tables from scratch closing possible gaps and avoiding multiple entries with same RGB values. Icon images are always compressed now, but the RGB color tables are simply copied. That's faster. The optimized RLE decoder has a direct 8-bit handling. The decoding of the 2. image is done just in time now. Supports the OS 3.1.4 function BumpRevisionLength() to make copies of icons with long file names possible. It could also be done with WB v45.132 and WBCTRL MNL=102. All v51 versions can display the Eastern preview icons in TrueColor. Saving as OS4 icons is also possible, if zlib.library v3.2 is installed, ColorIcons by default. The OS 3.9 picture.datatype 45.17 offers best scaling. This icon.library has support for DOpus5, AfA_OS and a special version for Aros 68k and Wanderer is included. File types can be identified by DefIcons v47+ and also by the datatypes system to load the default icons. "Tricky Drag°n" allows icon dragging in RGB TrueColors and with soft alpha channel fading at the borders with P96 on Workbench 3.0-3.9 for OS4 and PNG icons and RGB for palette based ColorIcons and NewIcons. This should also work with P96 v3.x, but I can't test new versions. "Tricky Drag°n" now also works under DOpus 5.x on P96 RTG screens without using "Custom Dragging Routines", even with DOpus 5.9x, but not under Aros 68k or CGX4. In order to reduce the amount of data that has to be transferred between the CPU and the gfx-card over the slow Zorro bus, the rectangles of TrueColor images are made as small as possible by removing the outer parts, which are nearly 100 % transparent, when alpha is 0-2. This was already implemented for ColorIcons on RTG. The rectangles of the first images (unselected icons) can be reduced by 20-40%, but the 2. images only < 5%, because the glow effect covers most of the free space. Some small speed improvements 2-8% on chunky screens for icons with 64 colors or more and for WB v44+ only by using the cybergraphics WritePixelArray() function and the LUT8 format without C2P conversion or masks. This concerns only unselected icons and no deficons. Added support for IconControlA() GetARGBImageData1 and GetARGBImageData2, two tags of the Aros API, plus GetImageData1/2 with the OS4 tag SetImageDataFormat=2 for extracting TrueColor images with Alpha Channel.
Contents | < Browse | Browse >
The 68000 version uses palette based color mapping for all NewIcons, ColorIcons, OS4 and PNG icons. It has no support for direct drawing on graphics cards nor any special handling or optimization for 68020+ programs. The 68000 and 68020 versions always display OS4 and PNG icons after a color reduction in the OS 3.5 format with maximal 255 colors and a simple transparency mask, even on Hi/TrueColor screens. But if you save the converted icons in this OS 3.5 format, they will become smaller and can be loaded much faster than the TrueColor icons. OS 3.2 won't accept the v46 libraries, but TC020 works. The 68020 version is probably the best choice for slow Amigas and it already has support for direct drawing on graphics cards. On Hi/TrueColor screens it displays all palette based icons perfectly, only OS4 and PNG icons in a little lower quality but with less memory than TC020. After saving TrueColor icons in the OS 3.5 format they can be loaded much faster than the original ARGB icons! The TC020 version can display OS4 and PNG icons in best TrueColor quality and with soft alpha channel blending on graphics cards. This can happen very fast without a time consuming color reduction, but needs more memory to hold the compressed ARGB images. The icons are also copied and saved in their original OS4 or PNG format. TC020 has additional ARGB buffers for faster rendering. Furthermore, TC020 supports 8-bit and native modes by a color reduction in the same way as the 68020 version. PNG icons can be converted into the OS4 format, which makes them about 15 % larger, but loading 30 % faster. If, for some reason, you would like to save ARGB icons in the OS 3.5 format, you could still use the command "ConvertTrueColor" before displaying them. This works like a downgrade to the 68020 mode. "PreserveTrueColor" switches back to the TC020 mode. The v51 versions can display the preview icons of Eastern in TrueColor, too. Some special versions are stored in the Bonus drawer: I've made a new experimental FastWB version to achieve a faster and more responsive icon dragging and refresh on Workbench 3.1.4/3.5/3.9 for slower Amigas. It's not a 100 % perfect solution, because it still can happen that some parts of the window where you select the icons are not refreshed after the dragging, but that's not a big problem, since you can still update windows from the WB menu. My fix already tries to take care for any window switching, scrolling, resizing and also has a timeout of 1 second after the last icon movement in order to avoid a later graphical damage from menus or requesters opening suddenly over the active window. Try it out and report any issues or enjoy the speed-up. It is best used together with the option "HoldTCbuffer1". The Aros 68k version is quite the same as TC020, but it has some additional support for Wanderer which uses the alpha channel data to make the background transparent. This feature needs to be enabled in the preferences for Wanderer. It's no v51 version, because Eastern doesn't work on Aros yet, but you can use DefIcons v44+ from Stephan Rupprecht in WBstartup + ENVARC:deficons.prefs. The LD020 version uses some older line by line direct drawing code that sometimes is still faster than 68020 to display color mapped icons on a Hi/Truecolor screen. The HB020 version displays a HalfBright second image for TrueColor icons with one image, not a glow effect. The new 68020 based lite version "Smurf", which won't use pen 0 for the color mapping to avoid color fades to appear in the icon images when you run a Copper-demon. "Smurf" has no support for OS 3.2, datatype detection, and no icon size scaling or grayscale mapping options. The HAM6 and HAM8 versions are based on TC020, but are able to display NewIcons, ColorIcons, OS4 and PNG icons with much more different HAM colors on the Workbench by using the AGA chipset. Makes not much sense on OCS/ECS. Unfortunately, the Amiga is too slow to enjoy HAM WBs.
Contents | < Browse | Browse >
Build #592 (2024/12/31): The transparency mask for planar icons with one image only and when "Backfill" mode is enabled uses Flood() from border pixels again to make color 0 transparent. All other pixels with color 0 are remaining gray now. #592: Fixed an uncritical bug of #591, the Open-count of cybergraphics.library was increased for every Open of icon.library due to tests with an outdated offset. The MakePlanarMask code has been optimized and needs no ReadPixel() calls anymore and only one Flood() to reach all transparent pixels from a temporary border. The new code is smaller and 8-9% faster without Jit. Updated 68000 and 68020 libraries are also included. Unfortunately, WB 3.0/3.1 will never use blit-masks. There is another new special version "BWswap" which can swap pen 1 and 2 with "BWswappingOnOff" in order to exchange Black and White in a dark theme by force, because some programs don't allow to configure their colors by user defined settings as it is possible in the WB assignments in palette and font preferences. Tell me your opinion, whether I should integrate it?
Contents | < Browse | Browse >
The complete icon.library package is available at: http://aminet.net/package/util/libs/IconLib_46.4 Updates, bugfixes, test versions and IconDemoADFs: http://eab.abime.net/showthread.php?t=64079 Some other useful programs at Aminet are: http://aminet.net/package/gfx/misc/pngcrush-m68k http://aminet.net/package/util/app/dropview http://aminet.net/package/util/boot/FBlit http://aminet.net/package/util/boot/LoadModule http://aminet.net/package/util/boot/RemAPollo http://aminet.net/package/util/libs/zlib-library http://aminet.net/package/util/misc/ReportPlus http://aminet.net/package/util/wb/AutoUpdateWB http://aminet.net/package/util/wb/CopyIcon44 http://aminet.net/package/util/wb/DefIcons44 http://aminet.net/package/util/wb/Eastern http://aminet.net/package/util/wb/FullPalette22 http://aminet.net/package/util/wb/image2icon http://aminet.net/package/util/wb/i2iGUI-V2 http://aminet.net/package/util/wb/KDEView http://aminet.net/package/util/wb/MUIScrMode1_5 http://aminet.net/package/util/wb/NewIcons46 http://aminet.net/package/util/wb/ProcessIcon http://aminet.net/package/util/wb/SwazInfo18b install by hand Some high resolution monitor drivers (for HAM6/8): http://aminet.net/package/driver/moni/HighGFXnmore A very useful tool for icons is ImageConverter: https://sourceforge.net/p/amega1/code/HEAD/tree/Sources/Tools/ImageConverter Icon sets: http://aminet.net/pix/gicon http://aminet.net/pix/icon http://aminet.net/pix/mwb http://aminet.net/pix/nicon http://aminet.net/pix/picon http://www.masonicons.de http://www.five-star.com/kens_icons/icons.htm http://www.amiga-look.org/category/glowicons http://www.intuitionbase.com/customisation.php?category=icons http://os4depot.net/index.php?function=browse&cat=graphics/icon Icon structure: http://krashan.ppa.pl/articles/amigaicons http://www.evillabs.net/wiki/index.php/Amiga_Icon_Formats
Contents | < Browse | Browse >
The installation depends on many things like CPU, ROM,
OS and WB version, memory, gfx-system, speed, patches.
On most 68020+ systems with a workbench.library v44+
just copy my libs/icon.library into your LIBS: drawer.
The v51 TC020 version is supplied as libs/icon.library
now, which can be used on ALL systems with 68020+ CPUs.
No, it does not need a gfx-card, although it offers all
the support for TrueColor screens and icons in the best
possible quality. Of course, it also works with native
Amiga screen modes and even without P96 or CGX drivers.
But you could also try out the FastWB version instead,
which ignores many redundant refreshes from WB v44/45.
Always remove name extensions and set the flags P-RW-D.
For long file names adjust your Workbench preferences.
OS 3.2 needs at least an icon.library v47, so you can
only install the v47 or the v51 icon.libraries on 3.2,
but it's still possible to call "ConvertTrueColor" in
case that you prefer to create faster 3.5 ColorIcons.
Best choice for OS 3.2 is TC020 from libs/icon.library,
HB020 if you like. 68020 is too old, FastWB not needed.
Most 68000 systems are far too slow to have a benefit
from using the 68000/icon.library, you can't even load
icons into FastMem. FBlit, P96 and CGX need 020+ CPUs.
My 68000 version is for faster systems like a Minimig.
On OS 3.0/3.1 systems it's required to remove the old
icon.library of the Kickstart Rom from the list of the
resident modules before a new icon.library from Libs:
can be loaded. I'd recommend to use RemLib by Thomas
Rapp or SetPatch v44, because they won't cause reboots.
On the same way you can also replace the old workbench.
A new WB v44+ has many advantages for old 3.1 systems.
SetPatch v44 will update both without additional tools.
If you have an older version, add this before SetPatch:
If EXISTS Libs:icon.library
RemLib >NIL: icon.library
If EXISTS Libs:workbench.library
RemLib >NIL: workbench.library
EndIf
EndIf
Alternatively, it's possible to load the new libraries
resident, but these methods need to reboot your system.
This can be done with LoadResident, LoadModule or other
tools like BlizKick. - Or you could build your own Rom.
For example, insert these lines before SetPatch (<v44):
Version >NIL: icon.library 46
If WARN
If EXISTS LIBS:workbench.library
LoadResident >NIL: LIBS:workbench.library
EndIf
LoadResident >NIL: LIBS:icon.library REBOOT
EndIf
OS 3.0/3.1 has just one limitation of workbench.library
v39-40, which will never reload the palette based icons
after a screenmode change automatically. You can use my
RefreshIcons tool now to reload or remap all ColorIcons.
Install SwazInfo on WB 3.0/3.1 to replace WB=>IconInfo.
If the SwazInfo Installer fails, install it manually.
The NewIcons patch can be used to achieve a transparent
background for the icon images, and supplies DefIcons !
I've created some demo floppy images for OS 3.0/3.1 to
show you how to install the library and other programs:
IconDemoADF http://eab.abime.net/showthread.php?t=64079
The Envarc:FBlit.cfg for WB 3.1 and also for WB 3.1.4+
are provided. It depends only on the workbench.library
version (v39-40 or v44+) which config file FBlit needs.
FastMem will be used by default if FBlit was detected.
Never install FBlit together with a P96 or CGX driver.
On systems with P96 or CGX you should activate FastMem
for the icon images. On OS 3.9 set Prefs/Workbench to
"other memory", or on 3.5 call "WBCTRL IMT=ICONFAST",
on WB 3.0/3.1 you can use my command "IconsToFastMem".
OS 3.1.4-3.2 activates FastMem automatically for RTG.
An alternative CPU version of the icon.library can be
installed in a subdirectory of LIBS: for the case that
no library was already resident. If LIBS:icon.library
is the 68000 version then you can add a 020 CPU version
as LIBS:68020/icon.library. Or if LIBS:icon.library was
compiled for the 68020+ then you can add an alternative
as LIBS:68000/icon.library. The correct version will be
loaded automatically. This feature works with SetPatch
v44 or RemLib by Thomas Rapp, but not with LoadModule,
LoadResident, BlizKick or with a resident icon.library.
.
Contents | < Browse | Browse >
Optional commands to be called before LoadWB starts: ____________________________________________________ AllFramesOn1/2/3 and AllFramesOff are for systems with WB v44+ on OS v39-44. The number at the end (1-3) sets the frame size. But some color icons may never get any frames when they have an internal "Frameless" flag set which can only be changed with the OS 3.9 IconEdit or the icon processor modul of Report+. On WB 3.1 you can use the NewIcons patch to enable transparent frames. On WB v45+ the frame settings are in Prefs/Workbench. PlanarFrames1/2/3 can be used on WB v44+ to enable the frames exclusively for the old 4-color and MWB icons, but not for TrueColor or color mapped icons. Changing the frame sizes in Prefs/Workbench is still possible. By calling PlanarFrames1/2/3 once, the True/ColorIcons will always remain frameless, ignoring AllFramesOn1-3. A faster color mapping mode is optional available and can be activated by setting icon quality to bad under Prefs/Workbench. On WB v39-44 you can use the command FastColors. It maps 512 RGB colors with a cubic cache. I would recommend to use this option on slower Amigas. With a locked screen palette the quality won't change. IconsToFastMem can be used on Amigas with gfx-cards to load the icons faster and save ChipMem if you have no other program like Prefs/Workbench or WBCtrl to do it. It's sometimes required for WB 3.1, but not for FBlit. On OS 3.1.4-3.2 the memory type is set automatically. IconsTo24BitDmaMem can be used for saving some of the faster 32-bit memory for your real applications. But this option will also make the icon rendering slower. IconGhostingOff disables the 50 % transparency of the deficons, in case that somebody prefers opaque icons. GrayscaleOnOff can be used to display icons in shades of gray only instead of colors. You can activate it in Prefs/Workbench by setting icon quality to bad again. WB v39-44 needs both: GrayscaleOnOff plus FastColors. This option is only available for the 68020 version. OutlineIconText and ShadowIconText are optimizing the style of icon label text. Open Prefs/Fonts to choose a text color and the background color, but then switch back to text-only mode before you save your settings. OS 3.2 supports these label text modes in Prefs/Fonts. After activating outline or shadowtext or grayscale at runtime you need to update your icons with a WB-Reset. FileType is a test program for the type identification feature of the OS 3.2 DefIcons tool. For experiments. KillPlanarImages and KeepPlanarImages are changing the libraries treatment of old images in OS 3.5-4.x icons. Without these options planar images with over 8 colors or a width of less than 8 pixels are replaced by the internal 4-color default images. KillPlanarImages will replace always. KeepPlanarImages saves broken colors. With KillPlanarImages you can reduce the icon size and avoid some memory wastage for up to 256 wrong colors. If the icons are loaded into ChipMem then a small dot image is used instead of the internal default images. To test it just disable ColorIcons in Prefs/Workbench. Reduce8PlanesTo3 can be used to convert wrong looking MWB icons with 256 colors for using the pens 0-7 only. This option is an alternative to the previous options. FakeIconSizeForAfA compensates the problem that AfA_OS has with different sizes of my internal default images in comparison to the larger color mapped or OS4 icons. It's for AfA only, because it wastes space on WB 3.1. ConvertTrueColor can be used for OS4 and PNG icons if you still want to create the smaller and faster OS 3.5 format with up to 255 colors using TrueColor versions. Of course, you've to save the icons to get more speed. PreserveTrueColor switches back to the TrueColor mode. ConvertPNGtoOS4 makes PNG icons about 15 % larger, but loading OS4 icons is about 30 % faster. This feature needs the zlib.library v3.2 being installed to work. Only TrueColor versions are supporting the conversion. HoldTCbuffer1 makes the window scrolling, resizing and the slow icon dragging of the WB a little faster, but with a higher memory consumption. All buffer memory is always freed as soon as the window is closed again. It is only working in TrueColor versions on RTG screens. Added the options "DropNewIcons", "KeepNewIcons" and "DropColorIcons", "KeepColorIcons" for WB 3.0/3.1. These global options are working similar to the v45+ Workbench Preferences switches "No NewIcons" and "No ColorIcons", but I've written them for WB 3.0/3.1 on demand from a user, who wanted to get rid of NewIcon and ColorIcon images. So, on WB 3.0/3.1 only, these options will cut off unwanted images by saving icons. DropNewIcons can remove the images from the tooltypes by writing the displayed planar icons back to disk. This can be done by selecting (all) icons in a window and snapshot their position as long as they were not moved before. Or you may use SwazInfo to save them. DropColorIcons can remove all chunky and ARGB images from icons (NewIcons too) when you save them to disk. Then, only the old planar and MWB images will remain. DOnoColorMapping was an option for TrueColor screens on DOpus5 which could be used together with the enabled icon setting "Use Custom Drag Routines" for more speed and a better quality. It avoids all the color mapping. Use it with HoldTCbuffer1 for best speed and quality. It is highly recommended to install my patched version 5.83 of DOpus5, which has a fix for a big memory leak. "DOnoColorMapping" is always activated for TrueColor versions now, so this option is not required anymore for "Tricky Drag°n", except for the old 68020 version. IconUpScaling and IconDownScaling, only for the 68020 version available, can be used from a shell at runtime to enlarge the images to 150 % or reduce them to 66 % of their width and height. This works with all PNG, OS 3.5 and OS4 icons, but not with NewIcons, old 4-color and MWB icons, but NewIcons can be converted. Calling these commands for a second time switches the scaling off again. Don't get confused when saving scaled icons to disk, because they are updated then and will appear immediately as double-scaled icons! Switch the scaling off after writing is done and then refresh the window. InvertGhostingMask is an optional fix that should only be installed if you get invisible deficons when you're dragging them around. Never use it without this issue!
Contents | < Browse | Browse >
Always read the original tool documentation first ! Use the download links to get the latest full packs. AutoUpdateWB by Elena Novaretti, Massimo Tantignone. This small patch lets Workbench automatically update the contents of a drawer window whenever a file is created/renamed/deleted in its associated directory by any other means than the Workbench itself. Added AutoUpdateWB v37.0 (29.3.2012) patched for old WBs. CopyIcon by Stephan Rupprecht can be used to copy the icon images from one icon to another one. But it won't overwrite any existing settings or tooltypes. I've modified CopyIcon to work on 68000 and WB 3.0+. FBlit by Stephen Brookes makes it possible to load images into FastMem and replace the blitter calls by faster CPU routines. This reduces the ChipMem usage. There are two FBlit.cfg files supplied, one for the old workbench.libraries v39/40, the other for v44+. The user is still responsible to install and setup FBlit, fblit.library, FBlitGUI, FBlit.cfg correctly. Never use it together with P96 or CGX installations. FullPalette and FPPrefs by Massimo Tantignone can be used to set and lock colors of the screen palette. On some sytems it can be useful to have correct MWB colors or to use a fixed screen palette. It also has an optional fix for DOpus5 problems with ReleasePen. 2 modified versions of Rebel's 16 color palette are supplied and can be copied as FullPalette.prefs into Envarc:Sys and used by calling FPPrefs after IPrefs. This may allow a much better balanced color mapping. LoadModule by Thomas Richter can load icon.library and other modules like workbench.library resident by replacing the Rom versions. Read the documentation. Some options need the "P" bit set for the libraries. Some WBs v44-45 are not reset-proof and may need the LoadModule options IGNOREVERIFY and NOMEMFKICK then. On Aros 68k systems since 2020 LM seems not to work. LoadResident by Mikolaj Calusinski is a similar tool to load modules resident. See installation example. On Aros 68k systems LoadResident did never work yet. RemLib by Thomas Rapp can remove libraries from the list of resident modules without making new modules resident. The advantage is that it needs no reboot! Just make sure that you have an icon.library copied into Libs: and call RemLib before SetPatch as shown already in the example on the installation page. It still works on Aros 68k as long as no MMU is active. OpenWin.rexx by DaxB is a benchmark script which can measure the time it takes to open a window with many icons to compare the icon loading with other setups. It works with WB v44+ and DOpus5 and requires Arexx. Added a workaround for a bug in Startmenu 1.30 from Martin R. Elsner (MRE). Without any understandable reason Startmenu uses IconControlA() with SetWidth to change the internal width of the chunky image to 10. That setting is ignored now for the task "Startmenu". This won't work for a Project-icon in WBStartup. Copy MRE:Executables/Startmenu with its icon to WBStartup.
Contents | < Browse | Browse >
The HAM6 and HAM8 versions are a technical experiment. OS4, PNG and also color mapped icons are displayed much nicer on HAM screens with up to 4096 or 256k colors and Eastern picture icons are looking a lot better in HAM8. Unfortunately, HAM-WBs are too slow on Amiga chipsets. Copy the icon.library from the HAM6 or HAM8 drawer into LIBS: and the FullPalette.prefs file into ENVARC:Sys to get the required 16/64 base colors and you have to call FPPrefs in your startup-sequence directly after IPrefs. HAM modes can only be selected with MUIScreenmodePrefs. As an alternative, if you don't want install the latter you can try the HAM screenmode preset files which will need the corresponding monitor drivers being installed. The tooltypes ACTION=USE can be changed to ACTION=SAVE. Never change the colors 0-15 / 0-63 of the HAM palette! There are some extra files with the HAM palettes, which can be used for creating wallpapers with 16/64 colors. It's impossible to get the MWB colors for the last four pens of a palette on HAM screens. Use Reduce8PlanesTo3. The HAM versions have TrueColor support like TC020, but the delayed second image and the ghosting are disabled. DOpus5 has no real support for HAM screens. But you can choose the display setting "Use Workbench" as a screen. DirectoryOpus 5.82 and DOpus5.83 The new "Tricky Drag°n" also works under DOpus5 on P96 RTG screens without using "Custom Dragging Routines", even with DOpus 5.9x, but not under Aros 68k or CGX4. If you want to run DOpus5 standalone by LoadDB on 3.2.x then add my option IconsToFastMem after calling IPrefs. The fastest screenmode under DOpus5 is "Use Workbench". "DOnoColorMapping" is always activated in all TrueColor versions now, so this option is not required anymore. The older 68020 version still needs "DOnoColorMapping": A completely new approach makes the DOPus5 icon loading a lot faster. Instead of delaying the colormapping, it is not done at all anymore on Hi/TrueColor screens when you disable it with my option DOnoColorMapping, but you have to enable "use custom drag routines" in DOpus too. I've also made a fix for a big memory leak in this code of DOpus 5.82 under P96 and added a better transparency masking for the icons when these options are activated. You will get a faster icon loading without using slower planar images. For the TC020, FastWB and Aros versions my option HoldTCbuffer1 is also recommended for optimal speed and soft borders on RTG screen modes. You can find a bug-fixed DOpus5.83 in the Bonus drawer. Rename it and replace DirectoryOpus if you are starting it by LoadWB. A DOpus v5.82 patch of AfA_OS for Eastern and DefIcons from Bernd Roesch can still be executed on my fixed DOpus5.83, since it's not a new C-compilation, but just an edited binary file, and the patching works. The DOpus5 bug in the custom dragging was the usage of "Width" in the VSprite structure of AddBob() instead of "Words Per Row" and also without any RemBob() later. It uses only AddVSprite() and RemVSprite() now in the fix. The Aros 68k version is quite the same as TC020, but it has some additional support for Wanderer which uses the alpha channel data to make the background transparent. This feature needs to be enabled in the preferences for Wanderer. It's no v51 version, because Eastern doesn't work on Aros yet, but you can install DefIcons v44+ by Stephan Rupprecht in WBstartup + ENVARC:deficons.prefs. Allow copying of deficons to ENV: again in the startup- sequence by commenting this out: ; PAT "~(def_#?.info)" Or instead you can add "Assign >NIL: ENV: ENVARC: ADD". The Aros icon.library has to be removed with RemLib by Thomas Rapp somewhere above SetPatch. Other tools can't be used on Aros 68k anymore. FastMem is set by default. My experimental FastWB version tries to achieve a more responsive and faster icon dragging and refresh on the Workbench 3.1.4/3.5/3.9 for slower Amigas. This is not a 100 % perfect solution, because it still can happen that some parts of the window where you selected icons for the dragging are not refreshed after their release, but that is no big problem, since you can still update the window from the WB menu. My WBfix already tries to take care for any window switching, scrolling, resizing and also has a timeout of about 1 second after the last icon movement in order to avoid later graphical damage by menus or requesters opening suddenly over the active window. Brings more speed together with HoldTCbuffer1. WB 3.2 should be more optimized and may not need a fix. As a bonus there are 2 script based IconMixers included (using ProcessIcon) which can combine (True)ColorIcons with the planar images of MWB or old icons. The mixed icons will contain both image sets. One script retains the MWBIcon settings, the other one keeps the GlowIcon tooltypes. My option "Reduce8PlanesTo3" might be useful for getting correct looking MWB images without wasting space. Since PNG icons can't store planar images they have to be converted with "ConvertPNGtoOS4" in advance. Disable the options "DropPlanarImages" or "DropPlanar" in tools like RAWBInfo or CopyIcon. The mixed icons get damaged by AfA_OS, so don't use these IconMixers there. The new script ConvertToPngIcons in the bonus drawer can be used to convert all Amiga icons into the PNG format with optional scaling by using ImageConverter. The script can be executed directly or launched from a DropView app-icon or started by the WB tool-menu. Added the option "CRUSH" to my ConvertToPngIcon script, which will try to use PngCrush to optimize the PNG compression by trying out lots of different strategies. LD020 uses the older line by line direct drawing code, because sometimes that runs still faster than 68020. The HB020 version displays a HalfBright second image for TrueColor icons with one image, not a glow effect. The patches for workbench.library 45.127 and 45.131 to 45.132 include some fixes, explained in the lha file.
Contents | < Browse | Browse >
If you have some problems with my icon.library, want to make any suggestions or discuss new features then you can send me an email to <pkeunecke@alice-dsl.net> or use my threads at A1k.org or English Amiga Board: http://www.a1k.org/forum/index.php?threads/27403/ http://eab.abime.net/showthread.php?t=64079 But I won't appear in any other forums, at Twitter, Facebook, Reddit, in other social media or over IRC. Your feedback is always welcome, because testing the library code to find the hidden bugs is very difficult. If nobody reports any issues, it can take years before I may stumble upon a rare bug by coincidence one day. Please, send a description of your system with infos about the ROM, OS and WB version, CPU, your screenmode, FBlit, P96, CGX, your startup-sequence and patches, the version of icon.library, the icon type and screenshots. Thanks a lot to all the Amiga users who have already sent bugreports or made suggestions for improvements!
Contents | < Browse | Browse >
It's not allowed to distribute or install the TrueColor versions of this icon.library with or on AmiKit X or XE or any other freeware distro or software package for more than 10 Euro. Any bundling with commercial products is prohibited! This applies to the Aros-, LD020 and all the v51 versions. But you can still use the new 68000 or 68020 versions, or any other versions of older releases up to Build #538 without restrictions.
Contents | < Browse | Browse >
This program is freeware. I don't give any warranties. You are using this program on your own risk and you are responsible for any damage it could cause to your system. This icon.library is completely independent and free of the AmigaOS copyright. :) Read the restrictions for the distribution here, too! Copyright 2007-2025: Peter Keunecke
Contents | < Browse | Browse >
Dies ist ein optimierter Ersatz für die icon.library
von AmigaOS 3.0-3.9 oder Aros 68k, die im Kickstart ROM
existiert oder aus dem LIBS: Verzeichnis geladen wird.
Diese Shared Library enthält die Funktionen zum Laden,
Dekodieren, Anzeigen und Speichern von Piktogrammen und
zum Verwalten von Einstellungen für die Ausführung der
zugehörigen Programme durch Erfassen von Tooltypes, dem
DefaultTool, der Stackgrösse, der Icon-Position und bei
Verzeichnissen von Fensterdaten in den ".info"-Dateien.
Unterstützt werden alle alten planaren und MWB-Icons,
sowie palettenbasierte NewIcons oder OS 3.5 ColorIcons,
als auch OS4 oder PNG TrueColor-Icons und Aros Icons.
Alle Icons werden entweder per Blitter oder FBlit vom
Amiga-Chipsatz oder mit P96 bzw CGX auf Grafikkarten in
ihrer besten Qualität so schnell wie möglich angezeigt.
Es gibt jetzt 5 Methoden, um Icon-Bilder darzustellen:
1.) Planare Icons wählen direkt mit den Bitplane-Daten
die Farbstifte und ihre aktuellen Bildschirmfarben.
In planaren Icons sind keine Paletten gespeichert,
deshalb benötigen sie verriegelte Bildschirmfarben.
2.) NewIcons und ColorIcons verwenden Index-Bytes für
jedes Pixel, die auf eine 24-Bit RGB-Palette zeigen
und folglich auf 256 Farben pro Bild begrenzt sind.
Eine davon kann zur Transparenzmaskierung verwendet
werden. Die Farben werden der aktuellen Bildschirm-
palette zugewiesen und die Chunky-Bytes der Bilder
in Bitplanes konvertiert, was beides aufwendig ist.
Diese Methode findet immer die am besten passenden
Farben der Palette oder versucht, freie Farbstifte
zu erhalten.
3.) Auf Hi/TrueColor-Screens werden NewIcons und OS 3.5
ColorIcons perfekt angezeigt, indem sie ihre 24-Bit
RGB-Farben ohne Mapping an eine Grafikkarte senden.
Dies geht wesentlich schneller als die 2. Methode
und läßt auch mehr Farbstifte für Anwendungen frei.
:( Leider benötigt die WB Icon-Zieh-Routine immer noch
die herkömmlichen Bitplanes der ausgewählten Icons.
:) Für schnelleres Laden werden die Farbreduktion, das
Mapping und C2P verzögert, bis die Auswahl erfolgt.
4.) OS4, PNG und Aros Icons verwenden TrueColor Bilder
mit 24-Bit Farbdaten und einem Alphakanal Byte für
eine weiche Überblendung vom Rand zum Hintergrund.
Grafikkarten können diese Icons perfekt angezeigen,
aber auf 8-Bit und planaren Screens benötigen sie
erst eine zeitaufwendige Farbreduzierung in OS 3.5
Farben, gefolgt vom Mapping und der C2P-Umwandlung.
5.) Auf HAM-Bildschirmen werden palettenbasierte Icons
in ARGB-Bilder konvertiert wie bei OS4 und PNG und
dann wird entweder eine der 16 oder 64 Grundfarben
verwendet oder zwei Farbkomponenten des vorherigen
Pixels gehalten und die mit der größten Abweichung
wird aktualisiert. Auf normalen Amiga-Bildschirmen
können HAM-Bilder viel mehr unterschiedliche Farben
verwenden als beim ColorMapping. Aber der Chipsatz
ist leider doch zu langsam, um mit HAM zu arbeiten.
Contents | < Browse | Browse >
Ok, die wichtigste erforderliche Qualifikation zuerst: Das System braucht einen Benutzer, der versteht, wie's funktioniert und was er bewirkt, wenn er es verändert. Keinen, der nur den Feuerknopf seines Joysticks kennt. Man bat mich zu erwähnen, dass die Namens_Erweiterung der Library beim Kopieren nach Libs: zu entfernen ist. Ja natürlich, manchmal muss man sein Gehirn benutzen. Für erfahrene Benutzer von Amiga OS 3.x und Aros 68k: Diese icon.library läuft auf allen echten Amigas, auf Minimig, Vampire, Amithlon und Emulatoren wie WinUAE. Sie arbeitet mit jeder 680x0 CPU und braucht keine FPU oder MMU. Sie zeigt auf jedem Bildschirm alle Icons an. Die 68000-Version ist nur für schnelle Systeme wie den Minimig geeignet, ein Amiga mit 7 MHz ist zu langsam ! Das schnellste, was Du mit lahmen Amigas machen kannst: "Schmeiß sie weg!"...oder kaufe einen Beschleuniger ;) Wenn man wirklich etwas besseres nutzen möchte als nur 4-farbige oder MWB-Icons, braucht man eine CPU >30 MHz. Planare Icons kann die icon.library nie beschleunigen, weil keine Dekomprimierung und Farbzuordnung nötig ist. Man sollte eine schnelle Festplatte, viel FastMem und eine Grafikkarte besitzen, um mehr Spaß zu haben, aber das ist nicht unbedingt erforderlich. Diese Library funktioniert mit jeder Workbench ab v39, Wanderer (Aros-Version) und AfA_OS, DOpus5 oder Scalos. Auf einigen Systemen muss man die icon.library, die aus dem Kickstart-ROM geladen wird, mit Tools wie SetPatch v44 oder RemLib, LoadResident oder LoadModule ersetzen. Es werden nur PNG Bilder mit RGB oder RGBA unterstützt. Nur diese beiden Formate werden dekodiert, aber keine Graustufen, Interlaced oder Paletten-basierten Bilder. Nur IHDR, IDAT, icOn und IEND werden ausgewertet, alle anderen PNG-Chunks werden übersprungen und ignoriert. Falsche Bildformate führen zur Anzeige von Ersatzicons.
Contents | < Browse | Browse >
Diese icon.library kann alle Arten von Icons anzeigen: vier-farbig, MWB, OS 3.5, OS4, PNG, Aros und NewIcons. Sie unterstützt alle 680x0 Systeme mit OS 3.0-3.9 oder Aros und native Bildschirmmodi oder auch Grafikkarten. Diese Library wurde komplett in optimiertem Assembler Code geschrieben, der IconBeFast v2 schon beinhaltet. Sie ist kleiner als das Original und arbeitet deutlich schneller, vorausgesetzt, mein IconBeFast-Patch wurde nicht bereits installiert, zB. mittels SystemPatch v3. Aber diese Library hat mehr Verbesserungen als nur die schnellere Farbzuweisung. Sie kann auch die Dekodierung des 2. Bildes verzögern, bis ein Icon ausgewählt wird. Es wird kein ChipMem für Workbench Icons verschwendet, wenn man Prefs/Workbench auf "Anderen Speicher" setzt oder den Befehl WBCTRL IMT=ICONFAST vor LoadWB aufruft. OS 3.1.4/3.2 braucht diese Speichereinstellungen nicht. Ein Cache für die Bildschirm-Palette wird beim WB-Start erstellt und nur aktualisiert, wenn sich die Anzahl der gemeinsam genutzten Farbstifte danach geändert hat. Ein weiterer optionaler Cache mit einem Würfel von 512 "FastColors" erlaubt es, die beste Farbe zu berechnen. Diese Optimierung ist bei RTG Screens immer aktiviert, denn dann braucht man diese Farben nur zum Icon-Ziehen. Eine zlib Inflate Routine dient zum Dekomprimieren von OS4 und PNG Bildern. Die interne Farbreduktion basiert auf 15 Bits Genauigkeit für die ersten 128 Farben, bis die Palette mit weniger Bits nach der passenden Farbe durchsucht wird oder bevor eine weitere erstellt wird. Eine Palettenbelegungstabelle vermeidet bis zu ca. 200 Scans und spart Zeit. Ein schnelles Dithering ändert die Helligkeit der Pixel abwechselnd um +2 oder -2 und verwendet ein Schachbrettmuster für die Farbmischungen. Diese Library kann OS4 und PNG Icons auf allen nativen Amiga-Bildschirmen mit der normalen palettenbasierten Farbzuweisung darstellen. Zwei Alphakanal-Level werden durch eine Mischung mit 25% oder 50% Grau dargestellt, um weichere Abstufungen an den Rändern zu erhalten, da der Blitter nur einfache Transparenzmasken unterstützt. WB:Icon->Info und das Abspeichern von TrueColor-Icons konvertiert sie in das OS 3.5 Format bei beiden 680x0 Versionen. Die 68020 Version zeigt einen Requester für den Fall an, dass TrueColor Icons direkt von ColorIcons ersetzt werden würden. Das kann für ein einzelnes Icon erlaubt oder verhindert werden, für Ordner oder immer. Die OS 3.5-Konvertierung hat den Vorteil, dass kleinere Dateien entstehen und das Anzeigen viel schneller geht, obwohl die geringere Qualität oft kaum zu erkennen ist. Schlechte planare Bilder in OS 3.5 und OS4 Icons werden automatisch durch interne Icons ersetzt, falls sie zu winzig sind oder mehr als drei Bitplanes besitzen. TrueColor Icons mit nur einem Bild erhalten automatisch ein dunkleres 2. Bild mit einem einfachen Glüheffekt. Bei Hi/TrueColor Bildschirmen ist direktes RGB Zeichnen auf den Grafikkarten viel schneller als Farbzuweisungen mittels Bildschirm-Palette und bietet HiColor-Qualität oder sogar die perfekte Icon Darstellung. Die TrueColor Versionen, wie TC020, unterstützen auch weiche Ränder durch eine Alphakanalüberblendung über dem Hintergrund. Nur die 68000 Version bietet kein direktes Zeichnen an, weil es keine Grafikkarten oder Treiber dafür gibt. DefIcons werden als Geisterbilder mit 50 % Transparenz dargestellt. Wer diese Funktion nicht mag, kann sie mit "IconGhostingOff" global abschalten oder den Tooltype- Eintrag "NoGhost" gezielt bei den DefIcons hinzufügen. Das Ram Disk Icon wird automatisch synchronisiert mit def_Ram.info in ENV:Sys und ENVARC:Sys und man benötigt kein Copy oder MakeLink mehr zur RAM:Disk.info Datei. Icon Labels mit Outline oder Shadow Text sind möglich. Die Paletten-Optimierungsroutine für das Icon-Speichern wurde hinzugefügt. Sie ist immer aktiviert, unabhängig von den Optionseinstellungen und baut die Farbtabellen von Grund auf neu, schließt darin die möglichen Lücken und vermeidet mehrere Einträge mit gleichen RGB-Werten. Icon-Bilder werden jetzt immer komprimiert, aber die RGB-Farbtabellen werden nur kopiert. Das ist schneller. Der optimierte RLE-Decoder behandelt 8 Bitplanes extra. Die Dekodierung des 2. Bildes erfolgt jetzt bei Bedarf. Ab 3.1.4 wird BumpRevisionLength() unterstützt, um das Icon-Kopieren mit langen Dateinamen zu ermöglichen. Es funktionierte auch mit WB v45.132 und WBCTRL MNL=102. Alle v51 Versionen können die Eastern Preview Icons in TrueColor anzeigen. Das Abspeichern als OS4 Icons ist ebenfalls möglich, wenn zlib.library v3.2 installiert ist, sonst als ColorIcons. Die beste Skalierung bietet der OS 3.9 picture.datatype v45.17. Diese icon.library hat Unterstützung für DOpus5, AfA_OS und eine Aros 68k Version mit Anpassungen für Wanderer. Dateitypen können von DefIcons v47 identifiziert werden oder auch vom Datatype-System, um Ersatzicons zu laden. "Tricky Drag°n" erlaubt das Icon-Ziehen mit RGB-Farben und weichen Alpha-Kanal Übergängen an den Rändern mit P96 auf Workbench 3.0-3.9 für OS4 und PNG Icons und RGB für palettenbasierte OS 3.5 und NewIcons. Dieser neue Gfx-Patch Hack sollte auch mit P96 v3.x funktionieren, aber ich kann es nicht selbst testen, da ich v2 nutze. "Tricky Drag°n" funktioniert jetzt auch mit DOpus 5.x auf P96 RTG Screens ohne die "speziellen Ziehroutinen", sogar mit DOpus 5.9x, aber nicht unter Aros oder CGX4. Um die Datenmenge zu reduzieren, die zwischen der CPU und der Grafikkarte über den langsamen Zorro-Bus über- tragen werden muss, werden die Rechtecke der TrueColor Bilder soweit wie möglich verkleinert, indem die fast 100 % transparenten Bereiche am Rand entfernt werden, wo Alpha 0-2 ist. Dies gab es für ColorIcons bereits. Die Rechtecke der ersten Icon-Bilder (nicht selektiert) können um 20-40% verkleinert werden, die 2. nur < 5%, weil der Glow-Effekt den meisten freien Platz abdeckt. Eine kleine Beschleunigung (2-8%) auf Chunky Screens für Icons mit 64 oder mehr Farben und nur bei WB v44+ durch Nutzung der CGX WritePixelArray() Funktion und dem LUT8 Format ohne C2P Konvertierung oder Masken. Es betrifft nur unselektierte Icons, keine DefIcons. IconControlA() unterstützt nun die GetARGBImageData1 und GetARGBImageData2 Tags der Aros API und die Tags GetImageData1/2 mit SetImageDataFormat=2 der OS4 API, um TrueColor-Bilder mit Alphakanal zu extrahieren.
Contents | < Browse | Browse >
Die 68000 Version verwendet immer die palettenbasierte Farbzuweisung für alle NewIcons, ColorIcons, OS4 und PNG Icons. Sie hat keine Unterstützung für das direkte Zeichnen auf Grafikkarten und auch keine Optimierung oder spezielle Behandlung für Programme, die erst auf einem System mit 68020+ CPU installiert werden können. Die 68000 und 68020 Versionen zeigen OS4 und PNG Icons immer nach einer Farbreduktion in das OS 3.5 Format mit maximal 255 Farben und mit einfacher Transparenzmaske, auch auf Hi/TrueColor Bildschirmen. Beim Speichern der konvertierten Icons im OS 3.5 Format werden sie kleiner und können danach schneller geladen werden als zuvor. OS 3.2 akzeptiert v46 nicht mehr, aber TC020 geht noch. Die 68020 Version ist wahrscheinlich die beste Wahl für langsame Amigas und sie hat bereits Unterstützung für direktes Zeichnen auf Grafikkarten. Auf Hi/TrueColor Bildschirmen zeigt sie alle ColorIcons perfekt an, nur OS4 und PNG Icons in etwas schlechterer Qualität, aber mit weniger Speicher als TC020. Nach dem Speichern von TrueColor Icons im OS 3.5 Format können sie dann viel schneller geladen werden als die originalen Icons. Die TC020 Version kann die OS4 und PNG Icons in bester TrueColor Qualität und dank Alphakanalüberblendung mit weichen Rändern auf Grafikkarten darstellen. Dies kann sehr schnell und ohne eine zeitraubende Farbreduktion geschehen, benötigt aber mehr Speicher, um zusätzlich die komprimierten ARGB Bilder zu halten. Das Speichern und Kopieren der Icons erfolgt in ihrem ursprünglichen Format. TC020 besitzt zusätzliche ARGB Puffer für ein schnelleres Anzeigen. Außerdem unterstützt TC020 8-Bit und native Bildschirme durch eine Farbreduktion in der gleichen Weise wie die 68020 Version. PNG Icons können in das OS4 Format konvertiert werden, was sie etwa 15% größer macht, aber 30% schneller lädt. Wer aus irgendeinem Grund ColorIcons speichern möchte, kann immer noch den Befehl ConvertTrueColor verwenden, bevor sie anzeigt werden. Dies wirkt wie ein Downgrade zum 68020 Modus. PreserveTrueColor schaltet zurück in den TC020 Modus. Die v51 Libraries können die Vorschau- bilder-Icons von Eastern auch in TrueColor anzeigen. Im Bonus Ordner findet man einige spezielle Versionen: Eine experimentelle FastWB Version versucht das Ziehen und Ablegen von Icons auf der WB v44-v45 schneller zu machen und die extrem vielen unnötigen Refreshes in den Fenstern so weit wie möglich zu ignorieren. Dies ist keine 100 % perfekte Lösung, denn es kann immer noch vorkommen, dass einige Teile des Fensters, in dem man die Icons auswählt, nach dem Ziehen nicht aktualisiert werden, aber das ist kein großes Problem, denn man kann die Fensterinhalte immer noch im WB-Menü aktualisieren. Mein Fix versucht bereits, Fensterwechsel, Scrollen und Größenänderung zu berücksichtigen und hat außerdem ein 1 Sekunden Timeout nach der letzten Icon Bewegung, um eine spätere grafische Beschädigung zu vermeiden, etwa durch plötzlich sich über dem aktiven Fenster öffnende Menüs oder Requester. Einfach mal testen und eventuelle Probleme melden oder das flüssigere Handling geniessen. Zusammen mit HoldTCbuffer1 ergibt es optimale Leistung. Die Aros 68k Version ist ziemlich identisch mit TC020, hat aber zusätzlich noch Unterstützung für Wanderer, um mittels Alphakanal Daten den Hintergrund transparent zu machen. Diese Funktion muss in den Voreinstellungen für Wanderer aktiviert werden. Es ist kein v51, denn bisher funktioniert Eastern noch nicht auf Aros 68k, aber man kann DefIcons v44+ von Stephan Rupprecht nach WBstartup kopieren und zusätzlich ENVARC:deficons.prefs kopieren. Die LD020 Version verwendet eine ältere zeilenbasierte Routine zum direkten Zeichen, die manchmal immer noch schneller ist, um die RGB Farben von ColorIcons direkt auf einem Grafikkarten RTG Bildschirm darzustellen. Die HB020 Version zeigt ein zweites halbhelles Bild bei TrueColor Icons mit nur einem Bild, keinen Glow-Effekt. Die 68020-basierte Version "Smurf" vermeidet es, auf den Farbstift 0 zu mappen, damit bei Verwendung eines CopperDemons keine Farbverläufe in Icons durchscheinen. "Smurf" hat keinen OS 3.2 Support, Datatype Erkennung, noch Optionen für IconUp/DownScaling oder Graustufen. Die HAM6 und HAM8 Versionen basieren auf TC020, können aber NewIcons, ColorIcons, OS4 und PNG Icons nativ auf dem AGA Chipset mit viel mehr verschiedenen HAM-Farben anzeigen. Das macht auf OCS/ECS wenig Sinn. Leider ist der Amiga zu langsam, um HAM WBs tatsächlich zu nutzen.
Contents | < Browse | Browse >
Build #592 (2024/12/31): Bei planaren Icons mit nur einem Bild und aktiviertem "Backfill" Modus wird die Transparenzmaske nun wieder mit Flood() nur von Rand-Pixeln mit Farbe 0 erstellt. Alle anderen Pixel mit Farbe 0 bleiben jetzt grau. #592: Ein unkritischer Fehler in #591 wurde behoben, wo der Open-Count der CGX-Library bei jedem Open der IconLib erhöht wurde, da Tests alte Offsets prüften. Der MakePlanarMask Code wurde optimiert und braucht nun keine ReadPixel()-Calls mehr und nur ein Flood(), um von einem temporären Rand alle transparenten Pixel zu erreichen. Der Code ist kürzer und 8-9% schneller. Aktuelle 68000 und 68020 Libraries sind jetzt dabei. Leider wird WB 3.0/3.1 niemals Blitter-Masken nutzen. Es gibt noch eine weitere neue Version "BWswap", bei der mittels "BWswappingOnOff" die Farbstifte 1 und 2 vertauscht werden können, um in einem Dark Theme die Farben Schwarz und Weiß zwangsweise zu wechseln, denn bei einigen Programmen können die Farben nicht vom Anwender konfiguriert werden, wie in den Preferences für Palette und Fonts mit entsprechnden Zuweisungen. Sagt mir eure Meinung, ob ich dies integrieren soll?
Contents | < Browse | Browse >
Das komplette icon.library Paket findet man unter: http://aminet.net/package/util/libs/IconLib_46.4 Updates, Bugfixes, Testversionen und IconDemoADFs: http://eab.abime.net/showthread.php?t=64079 Weitere nützliche Programme im Aminet sind: http://aminet.net/package/gfx/misc/pngcrush-m68k http://aminet.net/package/util/app/dropview http://aminet.net/package/util/boot/FBlit http://aminet.net/package/util/boot/LoadModule http://aminet.net/package/util/boot/RemAPollo http://aminet.net/package/util/libs/zlib-library http://aminet.net/package/util/misc/ReportPlus http://aminet.net/package/util/wb/AutoUpdateWB http://aminet.net/package/util/wb/CopyIcon44 http://aminet.net/package/util/wb/DefIcons44 http://aminet.net/package/util/wb/Eastern http://aminet.net/package/util/wb/FullPalette22 http://aminet.net/package/util/wb/image2icon http://aminet.net/package/util/wb/i2iGUI-V2 http://aminet.net/package/util/wb/KDEView http://aminet.net/package/util/wb/MUIScrMode1_5 http://aminet.net/package/util/wb/NewIcons46 http://aminet.net/package/util/wb/ProcessIcon http://aminet.net/package/util/wb/SwazInfo18b Monitortreiber für hohe Auflösungen (für HAM6/8): http://aminet.net/package/driver/moni/HighGFXnmore Sehr nützlich für Icons ist auch ImageConverter: https://sourceforge.net/p/amega1/code/HEAD/tree/Sources/Tools/ImageConverter Icon Pakete: http://aminet.net/pix/gicon http://aminet.net/pix/icon http://aminet.net/pix/mwb http://aminet.net/pix/nicon http://aminet.net/pix/picon http://www.masonicons.de http://www.five-star.com/kens_icons/icons.htm http://www.amiga-look.org/category/glowicons http://www.intuitionbase.com/customisation.php?category=icons http://os4depot.net/index.php?function=browse&cat=graphics/icon Icon Strukturen: http://krashan.ppa.pl/articles/amigaicons http://www.evillabs.net/wiki/index.php/Amiga_Icon_Formats
Contents | < Browse | Browse >
Die Installation hängt von vielen Dingen ab: CPU, ROM,
OS und WB Version, Speicher, Grafik, Leistung, Patches.
Bei 68020+ Systemen mit einer workbench.library v44+
reicht meistens schon 'copy libs/icon.library to LIBS:'.
Als libs/icon.library wird jetzt die v51 TC020 Version
vorgegeben, die auf ALLEN Systemen mit 68020+ benutzt
werden kann. Nein, man braucht dafür keine Grafikkarte,
obwohl sie volle Unterstützung für TrueColor Icons und
Bildschirme in bester Qualität bietet. Natürlich kann
man sie auch auf allen nativen Amiga Screens verwenden
und benötigt dazu trotzdem keinen P96 oder CGX Treiber.
Als TC020-Alternative gibt es noch die FastWB Version,
die viele redundante Refreshes von WB v44/45 ignoriert.
Immer die Erweiterung entfernen und P_RW_D Flags setzen.
Für lange Dateinamen die Workbench Preferences anpassen.
OS 3.2 benötigt mindestens eine icon.library v47, daher
läßt sich nur noch v47 oder v51 auf OS 3.2 installieren,
aber man kann immer noch ConvertTrueColor aufrufen, wenn
man lieber schnellere 3.5 ColorIcons erstellen möchte.
Optimal ist TC020 = libs/icon.library, HB020 bei Bedarf.
Die 68020 Version ist zu alt und wird nicht akzeptiert.
FastWB wird nicht benötigt, WB v47 ist schon schneller.
Die meisten 68000 Amigas sind viel zu langsam, um einen
Vorteil bei Verwendung der 68000/icon.library zu haben,
man kann nicht einmal Icons ins FastMem laden. P96, CGX
und FBlit benötigen 68020 CPUs. Meine 68000 Version ist
für viel schnellere Systeme gedacht, z.B. den Minimig.
Bei OS 3.0/3.1 Systemen ist es erforderlich, die alte
Rom icon.library aus der Liste der residenten Module zu
entfernen, bevor die neue icon.library aus Libs: geladen
werden kann. Ich würde empfehlen, RemLib von Thomas Rapp
oder SetPatch v44 zu verwenden, da diese keine Reboots
verursachen. In gleicher Weise kann man auch die alte
Workbench ersetzen. Eine neue WB v44+ hat viele Vorteile
für alte 3.1 Systeme. SetPatch v44 aktualisiert beide
ohne zusätzliche Tools. Ansonsten vor SetPatch einfügen:
If EXISTS Libs:icon.library
RemLib >NIL: icon.library
If EXISTS Libs:workbench.library
RemLib >NIL: workbench.library
EndIf
EndIf
Alternativ ist es möglich, beide Libs resident zu laden,
aber diese Methoden erfordern einen Reboot des Systems.
Dies kann mittels LoadResident, LoadModule oder BlizKick
erreicht werden. - Oder man kann sein eigenes Rom bauen.
Zum Beispiel diese Zeilen vor SetPatch (<v44) einfügen:
Version >NIL: icon.library 46
If WARN
If EXISTS LIBS:workbench.library
LoadResident >NIL: LIBS:workbench.library
EndIf
LoadResident >NIL: LIBS:icon.library REBOOT
EndIf
OS 3.0/3.1 hat bei der workbench.library v39-40 nur die
Einschränkung, für palettenbasierte Icons nach einem
Wechsel des Screenmodes die Farben nie zu korrigieren.
Dafür kann jetzt mein RefreshIcons Tool benutzt werden.
Man sollte auch SwazInfo installieren, um IconInfo zu
ersetzen. Wenn der Installer fehlschlägt, dann manuell.
Der NewIcons Patch erlaubt bei 3.1 einen transparenten
Hintergrund für die Icon Bilder und liefert DefIcons !
Ich habe einige Demo-Disketten Images für OS 3.0/3.1
erstellt, um zu zeigen, wie man das installieren kann:
IconDemoADF http://eab.abime.net/showthread.php?t=64079
Die Envarc:FBlit.cfg für WB 3.1 und auch für WB 3.1.4+
werden mitgeliefert. Es hängt von der workbench.library
Version (v39-40 oder v44+) ab, welche Konfiguration für
FBlit benötigt wird. FastMem wird automatisch verwendet,
sofern FBlit beim Booten erkannt wurde.
FBlit nie zusammen mit P96 oder CGX Treibern verwenden!
Auf Systemen mit P96 oder CGX sollte man FastMem für
Icon-Bilder aktivieren. Bei OS 3.9 Prefs/Workbench auf
"anderer Speicher" setzen oder bei 3.5 mit dem Befehl
"WBCtrl IMT=ICONFAST" vor LoadWB aktivieren, für WB 3.1
kann man auch meinen Befehl "IconsToFastMem" verwenden.
OS 3.1.4-3.2 aktiviert das FastMem automatisch für RTG.
Eine alternative CPU Version der icon.library kann in
einem Unterverzeichnis von LIBS: installiert werden für
den Fall, dass noch keine Library resident geladen war.
Wenn LIBS:icon.library die 68000 Version ist, kann man
eine 020-er Version als LIBS:68020/icon.library ablegen.
Oder wenn LIBS:icon.library für den für den 68020+ ist,
kann man eine Alternative als LIBS:68000/icon.library
hinzufügen. Die richtige Version wird dann automatisch
geladen. Dies funktioniert mit SetPatch v44 oder RemLib
von Thomas Rapp, aber nicht mit LoadResident, BlizKick,
LoadModule oder bei einer residenten icon.library.
.
Contents | < Browse | Browse >
Optionale Befehle, die man vor LoadWB aufgerufen kann: ______________________________________________________ AllFramesOn1/2/3 und AllFramesOff sind für Systeme mit WB v44+ auf OS v39-44. Die Zahl am Ende (1-3) bestimmt die Rahmengröße. Einige ColorIcons werden jedoch keine Rahmen erhalten, wenn sie ein internes Frameless-Flag gesetzt haben, was nur mit dem OS 3.9 IconEdit und dem Icon-Modul von Report+ geändert werden kann. Bei WB 3.1 kann man den NewIcons Patch verwenden, um transparente Rahmen zu aktivieren. Bei der WB v45+ befinden sich die Rahmeneinstellungen schon in den Workbench Preferences. PlanarFrames1/2/3 kann auf WB v44+ verwendet werden, um die Rahmen ausschließlich für die alten 4-color und MWB Icons zu aktivieren, aber nie für True/ColorIcons oder NewIcons. Das Ändern der Rahmen in Prefs/Workbench ist weiterhin möglich. Nach dem Aufruf von PlanarFrames1-3 bleiben True/ColorIcons und NewIcons *immer* rahmenlos. Eine schnellere Farbzuweisung kann optional aktiviert werden, indem man die Icon Qualität in Prefs/Workbench auf schlecht setzt. Bei WB v39-44 ist das auch mit dem Befehl FastColors möglich. Dann dienen 512 RGB Farben eines Farbspeicher-Würfels zur direkten Farbberechnung. Diese Option ist auf langsameren Amigas zu empfehlen. Bei verriegelten Farben ändert sich die Qualität nicht. IconsToFastMem ist für Amigas mit Grafikkarten gedacht, um die Icons schneller zu laden und ChipMem zu sparen, wenn man kein anderes Programm wie Prefs/Workbench oder WBCtrl dafür nutzen kann. Es wird manchmal für WB 3.1 benötigt, aber nicht für FBlit. Seit OS 3.1.4-3.2 wird der Speichertyp vollkommen automatisch eingestellt. IconsTo24BitDmaMem kann verwendet werden, um mehr vom schnelleren 32-Bit FastMem für Anwendungen zu behalten. Mit dieser Option wird die Icon Anzeige aber langsamer. IconGhostingOff schaltet die Transparenz von DefIcons global aus, falls jemand Angst vor Geisterbildern hat. GrayscaleOnOff kann verwendet werden, um Icons nur in Grautönen statt in Farben anzuzeigen. Man kann es dann in Prefs/Workbench aktivieren, indem man die Qualität dort auf schlecht setzt. Die WB v39-44 benötigt beides: die Befehle GrayscaleOnOff und FastColors vor LoadWB. Diese Option wird nur in der 68020 Version unterstützt. OutlineIconText und ShadowIconText optimieren den Stil des Icon Label-Textes. Zur Farbwahl dient Prefs/Fonts, wo man eine Textfarbe und eine Hintergrundfarbe wählt, aber danach in den "Nur Text" Modus zurück schaltet, bevor man seine Einstellungen abspeichert. Bei OS 3.2 erscheinen diese Label-Textmodi bereits in Prefs/Fonts. Nach dem Aktivieren von Outline- oder Shadowtext oder Graustufen zur Laufzeit bitte mit WB-Reset auffrischen. FileType ist mein Testprogramm für die Identifikation des Dateityps im OS 3.2 DefIcons Tool. Für Experimente. KillPlanarImages und KeepPlanarImages ändern die Weise, wie planare Bilder in OS 3.5 und OS4 Icons zu behandeln sind. Ohne eine Option werden planare Bilder mit mehr als 8 Farben oder einer Breite von weniger als 8 Pixeln durch interne 4-color Icons ersetzt. KillPlanarImages ersetzt alles. KeepPlanarImages verschont Falschfarben. Mit KillPlanarImages kann man die Dateigröße reduzieren und Speicherverschwendung für die oft nutzlosen Bilder vermeiden. Falls die Icons ins ChipMem geladen werden, ersetzt nur ein schwarzer Punkt die planaren Bilder. Um es zu testen, ColorIcons in Prefs/Workbench abschalten. Reduce8PlanesTo3 kann benutzt werden, um falschfarbige MWB Icons mit 8 Bitplanes zur Verwendung der Farben 0-7 und 3 Bitplanes zu konvertieren. Es ist als Alternative zu den vorherigen Optionen gedacht. FakeIconSizeForAfA kompensiert das Problem, dass AfA_OS mit unterschiedlichen Größen der internen Ersatzbilder im Vergleich zu den größeren OS 3.5 oder OS4 Icons hat. Ein Fix nur für AfA, der auf WB 3.1 Platz verschwendet. ConvertTrueColor kann bei den TrueColor Versionen dafür verwendet werden, um OS4 und PNG Icons trotzdem in das kleinere und schnellere OS 3.5 Format mit 255 Farben zu konvertieren. Natürlich muss man die Icons abspeichern, damit es wirkt. PreserveTrueColor schaltet dann zurück. ConvertPNGtoOS4 macht PNG Icons etwa 15 % größer, aber das Laden der OS4 Icons geht etwa 30 % schneller. Dafür muss aber die zlib.library v3.2 schon installiert sein. Nur TrueColor Versionen unterstützen die Konvertierung. HoldTCbuffer1 macht das Fenster-Resizing, Scrollen und das langsame Icon-Ziehen bei TrueColor etwas flüssiger, aber bei höherem Speicherverbrauch. Der gesamte Puffer wird dann erst beim Schließen des Fensters freigegeben. Dies funktioniert nur mit TrueColor Versionen auf RTG. Neue WB 3.1 Optionen "DropNewIcons", "KeepNewIcons" und "DropColorIcons", "KeepColorIcons" hinzugefügt. Diese globalen Optionen arbeiten ähnlich wie die v45+ Schalter "Keine NewIcons" und "Keine Farbpiktogramme" in den Workbench Preferences. Ich habe sie für einen Anwender geschrieben, der die NewIcon- und ColorIcon- Bilder loswerden wollte. Nur unter WB 3.0/3.1 werden diese Optionen beim Abspeichern die Bilder entfernen. DropNewIcons entfernt die Bilder aus den Tooltypes, sobald man die angzeigten planaren Icons abspeichert. Dies geht durch Selektieren von (mehreren) Icons im Fenster und dem Fixieren, solange die Positionen noch nicht verändert wurden; oder mit SwazInfo speichern. DropColorIcons kann alle chunky und ARGB Bilder von den Icons (auch NewIcons) beim Abspeichern entfernen. Nur die alten planaren und MWB Bilder bleiben übrig. DOnoColorMapping war für DOpus5 TrueColor Bildschirme und funktionierte nur zusammen mit der Icon Einstellung "Use Custom Drag Routines", um langsame Farbzuweisungen zu vermeiden, höhere Geschwindigkeit und eine bessere Qualität zu erzielen. Für optimale Leistung sollte man zusätzlich HoldTCbuffer1 verwenden. Es wird empfohlen, meine gepatchte Version DOpus 5.83 zu installieren, in der ein großes Speicherleck im Dragging behoben wurde. "DOnoColorMapping" ist bei den TrueColor Versionen nun immer aktiviert, so dass die Option mit "Tricky Drag°n" jetzt überflüssig wird, bis auf die alte 68020 Version. IconUpScaling und IconDownScaling, nur für die Version 68020 verfügbar, kann man als Shell-Befehl zur Laufzeit verwenden, um die Icon-Bilder auf 150 % Breite und Höhe zu vergrößern oder auf 66 % zu verkleinern. Dies geht bei allen PNG, OS 3.5-4 Icons, aber nicht mit NewIcons, alten 4-color und MWB Icons. NewIcons vorher umwandeln. Ein 2. Aufruf der Befehle schaltet die Skalierung aus. Es mag etwas verwirrend sein, wenn man skalierte Icons abspeichert, denn sie werden dadurch aktualisiert und erscheinen sofort als doppelt skalierte Icons! Einfach die Skalierung ausschalten, nachdem der Schreibvorgang abgeschlossen wurde und dann das Fenster aktualisieren. InvertGhostingMask ist ein optionaler Fix, den man nur installieren sollte, wenn die DefIcons beim Verschieben unsichtbar werden. Niemals ohne diesen Fehler benutzen!
Contents | < Browse | Browse >
Bitte immer zuerst die originale Dokumentation lesen! Für neue und vollständige Pakete die Downloads nutzen. AutoUpdateWB von Elena Novaretti, Massimo Tantignone. Mit diesem kleinen Patch kann die Workbench den Inhalt eines Fensters automatisch aktualisieren, wenn Dateien in dessen zugehörigem Verzeichnis erstellt, umbenannt oder gelöscht werden, außer durch die Workbench selbst. Version v37.0 (29.3.2012) ist mein Patch für alte WBs. CopyIcon von Stephan Rupprecht kann verwendet werden, um die Icon-Bilder von einem Icon auf ein anderes zu kopieren. Dabei überschreibt es keine der bestehenden Einstellungen oder Tooltypes. Es wurde so modifiziert, dass es auch noch auf 68000 und WB 3.0+ funktioniert. FBlit von Stephen Brookes ermöglicht es, Bilder in das FastMem zu laden und Blitteraufrufe durch schnellere CPU-Routinen zu ersetzen. Das senkt den ChipMem-Bedarf. Es liegen zwei FBlit.cfg Dateien bei, eine für alte workbench.libraries v39/40 und die andere für WB v44+. Der Nutzer ist für die korrekte Installation von FBlit, fblit.library, FBlitGUI und FBlit.cfg verantwortlich. Es sollte niemals gleichzeitig mit P96 oder CGX laufen. FullPalette und FPPrefs von Massimo Tantignone können verwendet werden, um Farben der Bildschirm-Palette zu setzen und zu sperren. Auf einigen Systemen kann es nützlich sein, korrekte MWB Farben oder eine Palette mit festen Farbeinstellungen zu verwenden. Es hat auch einen optionalen Fix für DOpus5-Fehler bei ReleasePen. 2 modifizierte Varianten der 16-farbigen Palette von Rebel sind vorhanden und können als FullPalette.prefs nach Envarc:Sys kopiert und durch Aufruf von FPPrefs unter IPrefs verwendet werden. Dies kann eine deutlich ausgewogenere Farbverteilung bei Bildern ermöglichen. LoadModule von Thomas Richter kann diese Library oder andere Module wie die workbench.library resident laden und alte Rom-Versionen ersetzen (siehe Dokumentation). Für einige Optionen muss das "P"-Bit bei den Libraries gesetzt werden. Manche WBs v44-45 sind nicht reset-fest und benötigen möglicherweise die LoadModule Optionen IGNOREVERIFY und NOMEMFKICK, um Abbrüche zu vermeiden. Auf Aros 68k ab 2020 scheint LM nicht zu funktionieren. LoadResident von Mikolaj Calusinski ist ein ähnliches Tool, um Module resident zu laden. Siehe Installation. Auf Aros 68k hat LoadResident bisher nie funktioniert. RemLib von Thomas Rapp kann Libraries aus der Liste der residenten Module entfernen, ohne neue Module resident zu laden und erfordert deshalb keinen Neustart! Nachdem sichergestellt ist, dass eine neue Library nach Libs: kopiert wurde, kann man RemLib vor SetPatch aufrufen, wie bereits im Beispiel auf der Installationsseite. Es funktioniert auch mit Aros 68k, aber nur ohne eine MMU. OpenWin.rexx von DaxB ist ein Benchmark Skript, das die Zeit misst, um ein Fenster mit vielen Icons zu öffnen. Es ermöglicht, die Lade-Geschwindigkeit zu vergleichen. Mittels Arexx funktioniert es bei WB v44+ und DOpus5. Für einen Bug in Startmenu 1.30 von Martin R. Elsner (MRE) wurde ein Workaround hinzugefügt. Ohne irgend- einen verständlichen Grund ändert Startmenu mittels IconControlA() und SetWidth die Breite der internen Chunky-Bilder auf 10. Diese Änderung durch eine Task "Startmenu" wird nun ignoriert. Das geht aber nicht mit dem Project-Icon in WBStartup. Dafür kopiert man MRE:Executables/Startmenu plus Icon nach WBStartup.
Contents | < Browse | Browse >
Die HAM6 und HAM8 Libs sind ein technisches Experiment. OS4, PNG und auch palettenbasierte Icons werden auf HAM Bildschirmen mit bis zu 4096 oder 256k Farben sehr viel schöner dargestellt und auch die Eastern Icons sehen in HAM8 wesentlich besser aus als mit normalen Screenmodes. Leider sind HAM WBs auf den Amiga Chipsätzen zu langsam. Kopiere die icon.library aus dem HAM6 oder HAM8 Ordner nach LIBS: und FullPalette.prefs nach ENVARC:Sys, um die benötigten 16/64 Basisfarben zu erhalten und dann sollte man FPPrefs in der startup-sequence nach IPrefs starten. Die HAM Option gibt es nur in MUIScreenmode Preferences. Als Alternative, wenn man letzteres nicht installieren möchte, kann man meine HAM Screenmode Dateien verwenden, falls die zugehörigen Monitortreiber installiert wurden. Die Tooltypes ACTION=USE kann man in ACTION=SAVE ändern. Bitte niemals die Basisfarben 0-15 bzw. 0-63 der Palette verändern! Es gibt auch einige Dateien mit diesen Farben zum Erstellen dazu passender Workbenchhintergrundbilder. Es ist unmöglich, die MWB Farben für die letzten 4 Pens bei HAM Screens zu nutzen. Dann hilft Reduce8PlanesTo3. Die HAM Versionen bieten TrueColor Unterstützung wie bei TC020, aber das verzögerte zweite Bild und das Ghosting sind deaktiviert. DOpus5 hat keine eigene Unterstützung für HAM Screens, aber es geht mit "Workbench verwenden". DirectoryOpus 5.82 und DOpus5.83 "Tricky Drag°n" funktioniert jetzt auch mit DOpus 5.x auf P96 RTG Screens ohne die "speziellen Ziehroutinen", sogar mit DOpus 5.9x, aber nicht unter Aros oder CGX4. Wer DOpus5 eigenständig mittels LoadDB von 3.2.x starten will, sollte dazu IconsToFastMem nach IPrefs aufrufen. Der schnellste DOpus5 Screenmode ist "Workbench nutzen". "DOnoColorMapping" ist bei den TrueColor Versionen nun immer aktiviert, so dass die Option überflüssig wird. Nur die 68020 Version braucht noch "DOnoColorMapping": Ein völlig neuer Ansatz macht das Laden der DOPus5 Icons viel schneller. Statt die Farbzuweisungen zu verzögern, passiert es auf Hi/TrueColor-Bildschirmen garnicht mehr, wenn man es mit der Option DOnoColorMapping deaktiviert, aber man muss dazu "Spezielle Ziehroutinen" einschalten. Ich habe auch einen Fix für ein großes Speicherleck auf P96 im DOpus Code erstellt und eine bessere Transparenz- Maskierung für die Icons hinzugefügt, wenn die Optionen aktiviert sind. Sie bewirken ein schnelleres Laden der Icons ohne langsamere planare Bilder. Für die Versionen TC020, FastWB und Aros wird auch die noch HoldTCbuffer1 empfohlen für eine optimale Geschwindigkeit und weiche Icon-Ränder auf Hi/TrueColor Bildschirmen. Im Bonus Ordner befindet sich das fehlerbereinigte DOpus 5.83. Nach dem Benennen kann man DirectoryOpus ersetzen, wenn es durch LoadWB geladen wird. Der DOpus v5.82 Patch von AfA_OS (Bernd Roesch) für Eastern und DefIcons läßt sich immer noch auf meinem gefixten DOpus5.83 ausführen, weil es nur editiert aber keine neue C-Kompilierung ist. Der DOpus5 Bug im Custom-Dragging war die Verwendung von "Width" in der VSprite Struktur von AddBob() anstatt von "Words Per Row" und auch ohne späteres RemBob(). Der Fix verwendet jetzt nur noch AddVSprite() und RemVSprite(). Die Aros 68k Version ist ziemlich identisch mit TC020, aber sie hat zusätzlich Unterstützung für Wanderer, der den Alphakanal verwendet, um den Hintergrund transparent zu machen. Diese Funktion muss in den Einstellungen für Wanderer aktiviert werden. Es ist kein v51, denn Eastern funktioniert noch nicht auf Aros, aber man kann DefIcons v44+ von Stephan Rupprecht in WBstartup installieren und sein deficons.prefs von OS 3.9 nach ENVARC: kopieren. In der startup-sequence muss man das Kopieren von deficons nach ENV: wieder zulassen und vor "PAT" auskommentieren: Copy ENVARC: ENV: ALL NOPRO NOREQ ; PAT "~(def_#?.info)" Als andere Möglichkeit: "Assign >NIL: ENV: ENVARC: ADD". Die Aros icon.library muss durch RemLib von Thomas Rapp vor SetPatch entfernt werden. Andere Tools tun es nicht. Die Aros 68k Version belegt grundsätzlich immer FastMem. Eine experimentelle FastWB Version versucht, schnelleres oder flüssigeres Icon Ziehen bei Workbench 3.1.4/3.5/3.9 für langsamere Amigas zu ermöglichen. Es ist keine 100 % perfekte Lösung, denn es kann immer noch vorkommen, dass einige Teile des Fensters, in denen man Icons zum Ziehen ausgewählt hat, nach dem Ablegen nicht mehr aktualisiert werden, aber das ist kein großes Problem, da man dieses Fenster immer noch über das WB-Menü aktualisieren kann. Der WBFix beachtet bereits Fensterwechsel, Scrollen und Änderungen der Fenstergröße und hat auch ein Timeout von einer Sekunde nach der letzten Iconbewegung, um spätere Grafikschäden durch sich plötzlich über diesem aktiven Fenster öffnende Menüs oder Requester zu vermeiden. Dies bringt mehr Geschwindigkeit zusammen mit HoldTCbuffer1. Die optimierte WB 3.2 braucht möglicherweise keinen Fix. Als Bonus sind 2 skriptbasierte IconMixer enthalten, die mit Hilfe von ProcessIcon die (True)ColorIcons mit den alten planaren oder MWB Bildern kombinieren können. Die gemischten Icons enthalten beide Bildsätze. Je ein Skript behält die die MWB Icon-Einstellungen, das andere behält die GlowIcon Tooltypes. Meine Option "Reduce8PlanesTo3" könnte helfen, um 8-farbige MWB Bilder zu erzeugen ohne Platz zu verschwenden. Da PNG Icons keine planaren Bilder speichern können, müssen sie vorher mit "ConvertPNGtoOS4" konvertiert werden. Die Optionen "DropPlanarImages" oder "DropPlanar" sollte man in Werkzeugen wie RAWBInfo oder CopyIcon deaktivieren. Die gemischten Icons werden unter AfA_OS leider beschädigt. Mit dem neuen Skript ConvertToPngIcons im Bonusordner kann man alle Amiga Icons in das PNG Format umwandeln und optional skalieren mit Hilfe von ImageConverter. Das Skript kann direkt ausgeführt werden oder mittels DropView App-Icon oder man startet es vom Tool-Menü. Die Option "CRUSH" wurde zu dem Skript ConvertToPngIcon hinzugefügt, um mittels PngCrush eine besser optimierte PNG Komprimerung durch Probieren zahlreicher Strategien mit unterschiedlichen Filtern zu ermöglichen. LD020 verwendet älteres zeilenweises Zeichnen auf RTG, was manchmal noch schneller läuft als der 68020 Code. Die HB020 Version zeigt ein zweites halbhelles Bild bei TrueColor Icons mit nur einem Bild, keinen Glow-Effekt. Die Patches für workbench.library 45.127 und 45.131 auf 45.132 enthalten einige Fehlerkorrekturen (siehe lha).
Contents | < Browse | Browse >
Wenn jemand Probleme mit der icon.library hat, neue
Features wünscht oder Verbesserungsvorschläge machen
möchte, kann er mir eine E-Mail zusenden an:
<pkeunecke@alice-dsl.net>
oder meine Threads bei A1k.org oder EAB benutzen:
http://www.a1k.org/forum/index.php?threads/27403/
http://eab.abime.net/showthread.php?t=64079
Ich werde aber nie in anderen Foren, bei Facebook,
Twitter, Reddit und sonstigen sozialen Medien oder
in IRC Chats auftauchen bzw. Fragen beantworten.
Erfahrungsberichte von Anwendern sind immer nützlich
und willkommen, denn es ist manchmal sehr schwierig,
nur durch Tests versteckte Fehler zu finden. Es kann
Jahre dauern, bis ich zufällig ein Problem entdecke,
wenn niemand mir einen Bug-Report zuschickt.
Bitte eine Systembeschreibung mit Informationen zur
ROM, OS und WB Version, CPU, Screenmode, FBlit, P96,
CGX, zur startup-sequence und verwendeten Patches,
Icon-Typ, Library Version und Screenshots beifügen.
Vielen Dank an alle Amiga User, die bereits Fehler
gemeldet oder mir ihre Vorschläge mitgeteilt haben!
Contents | < Browse | Browse >
Die Verteilung oder die Installation der TrueColor Versionen dieser icon.library mit oder auf AmiKit X, AmiKit XE oder einer anderen Freeware Distribution für mehr als 10 Euro sind nicht erlaubt. Auch die Bündelung mit kommerziellen Produkten ist verboten! Dies gilt für alle Aros-, LD020 und v51 Versionen. Sie können aber weiterhin die neuen 68000 oder 68020 Versionen oder andere Versionen von älteren Ausgaben bis hin zu Build #538 ohne Einschränkungen verwenden.
Dieses Programm ist Freeware. Ich gebe keine Garantien. Die Benutzung erfolgt auf eigenes Risiko und der Nutzer trägt für jegliche Schäden an seinem System selbst die Verantwortung. Diese icon.library ist vollständig frei und unabhängig vom AmigaOS Copyright. :) Diese Einschränkungen zur Verteilung sind zu beachten! Copyright 2007-2025: Peter Keunecke